Secure High Capacity Data Hiding for 3d Meshes
نویسندگان
چکیده
In this paper we present a high capacity data hiding method for 3D meshes. The proposed method is blind and orders selected vertices from the 3D object’s mesh based on a pseudo random path. When a vertex is added to the path we embed a part of the message by displacing its location according to the location of another vertex called reference vertex. We solve the causality issue by removing certain vertices which would otherwise interfere with the path of selected vertices, during the message retrieval stage. Then we fill the resulting holes by remeshing. During the experiments, high bit capacity messages are embedded in several 3D objects. These messages are hidden under high levels of security while causing negligible surface distortions. Introduction 3D objects are increasingly used in various areas of activity and their processing, analysis, compression, printing are continuously in the attention of research development. Adding securely meta-data to the 3D content is required in many applications. For example, it could be useful to add patient informations to its 3D medical data, or product information in the case of CAD (computer-aided design) objects. Such operations have to be done with a significant security level because of the data sensitivity. Moreover, the method should be blind and in the detection stage we should not have any information about the cover media when retrieving the hidden data. Generally, data hiding aims to ensure a trade-off between capacity, imperceptibility, robustness and security. Imperceptibility has to be enforced in order to preserve the user experience. In the literature of data hiding in 3D meshes, most authors focus on watermarking for copyright purpose, where robustness is enforced in order to preserve the ownership of 3D models. However, such information embedding methods have low capacity embedding [1, 2, 3]. Security is defined in [4] as the challenge in finding the secret parameters of the embedding function based on the observation of watermarked data. High capacity data hiding methods aim to increase the payload capacity. While watermarking needs to be robust and secure, high capacity data hiding has to focus on its security. The security of data hiding methods must be assessed under the Kerckhoffs principle [5], which assumes that the algorithm is known by the attacker. In order to retrieve the embedded data, we should have good synchronization between vertex paths at the embedding and retrieval stages. A desynchronization can occur if the mesh is attacked or if the embedding modifies the order of the embedded vertices in the path. This paper proposes a blind and secure high capacity data hiding method. The security is ensured by a new vertex synchronization approach using random jumps on the surface of the 3D object mesh. Each vertex is either a carrier, or a reference or is not used for data hiding. In this work, we use an embedding method based on [6], which consists of quantifying vertex coordinates. The rest of the paper is organized as follows. In Section , we present an overview of the existing data hiding methods in 3D objects. The proposed method is introduced in the first section. In the second section, we provide the experimental results when hiding high capacity data into 3D objects. Finally, the last section concludes the paper and lists future objectives on how to continue this research. High capacity data hiding in 3D graphics When attempting to embed high capacity data in 3D models, we focus on the imperceptibility of the embedding while increasing the payload. Chao et al. [7] proposed an approach where 21 to 31 bits per vertex can be embedded in the 3D object. They order the vertices and embed the payload bits by displacing each vertex along x,y and z axes, after dividing the surface of the 3D object into regions. Their method produces nearly invisible distortion. Li et al. [8], have proposed a high capacity steganography method which preserves the surface of the 3D object. The algorithm proposed by Bogomjakov et al. [9] embeds a high capacity payload by changing the order of vertices in the object’s file. This method does not modify the 3Dmesh, and the message is included into the object‘s data file. However, this method is not robust to mesh file reshuffling. Gao et al. [10] proposed a semi-blind wa©2016 Society for Imaging Science and Technology DOI: 10.2352/ISSN.2470-1173.2016.21.3DIPM-396 IS&T International Symposium on Electronic Imaging 2016 3D Image Processing, Measurement (3DIPM), and Applications 2016 3DIPM-396.1 Figure 1: Diagram of the proposed data hiding method. termarking which has a capacity of 1-2 bits per vertex. Watermark codes are inserted by modifying the length ratios extracted from a co-planar convex quadrilateral. As these length ratios are affine invariant, this method can withstand affine transformations. Multiple copies of the watermark are embedded, in order to be robust against cropping, which reduces the payload. In [11], the capacity is of 3 bits per vertex. The value of each coordinate is divided into n intervals of size ∆, which correspond alternatively to 0 and 1. The new value is the center of the closest interval which codes the bit to be inserted. Moreover this method generates errors, thus authors use error correction code. In conclusion there are data hiding methods that embed high capacity payloads into 3D objects, without significantly distorting their meshes, but such methods lack in security. Selecting support vertices for data hiding In this Section, we outline the main stages of the proposed blind 3D data hiding method. The synchronization consists of building a path to order the chosen vertices. Random jumps are considered, according to a secret key, when selecting vertices on the surface in order to ensure the security and to spread the message on the entire mesh. The embedding is done by moving a vertex vi depending of the location of its reference vertex, which is defined as its closest vertex from the mesh. The payload message is embedded bit by bit, while synchronizing with mesh path selection in order to avoid the causality problem. The proposed data hiding method does not depend on the vertex connectivity, but only onto their actual location. Fig. 1, gives an overview of the proposed method for embedding a message, which can be an image for example. The loop corresponds to the iterative process which includes both the synchronization and the the payload embedding step. For each pixel of a colour image considered for embedding, the proposed method selects a carrier vertex according to a pseudo randomly generated vertex and its corresponding reference vertex. Then, if the displacement is allowed, the method proceeds with embedding the next bit from the payload. Otherwise, if the displacement is not permitted due to the causality problem, we would delete the current carrier vertex. Finally, when the entire message is embedded, holes in the surface of the 3D object caused by removing vertices, are covered by using remeshing. Steps of the proposed method are described in following sections. First, we define the synchronization approach. Then, we present the embedding process. After that, we explain how to deal with the causality problem in the proposed data hiding approach, while in the next section we explain how to extract the data. In the last section, we discuss the security aspects of the proposed 3D data hiding method. Synchronization Firstly, a random sequence of vertices is chosen for embedding information, based on a sequence of secret keys. The location of the first vertex is chosen using a user specific key. Then, for the following vertices, a series of spheres, each with their center located in a reference vertex and of random radius, are generated and then again a random location is chosen on each of these spheres. The location on the sphere is selected using the Marsaglia method [12]. This method generates uniformly distributed points on a sphere using random values obtained using a randomly generated secret key. Each sphere is centered on the chosen reference vertex. We use a random variable as the radius of each sphere. The radius depends on the longest distance on the mesh Dmax, and is calculated as: ri = k ·Dmax,k ∈ [0,1]. (1) Using a small k, we would obtain a predictable path by choosing the closest vertex at each step, which is not that secure. The proposed synchronization allows us to distribute the message on the entire mesh. Embedding In this Section, we propose to embed a part of the message using a pair of vertices each time, aiming to increase the capacity while ensuring a high security. The coordinates of each vertex vi are converted into spherical coordinates. A distance interval ©2016 Society for Imaging Science and Technology DOI: 10.2352/ISSN.2470-1173.2016.21.3DIPM-396 IS&T International Symposium on Electronic Imaging 2016 3D Image Processing, Measurement (3DIPM), and Applications 2016 3DIPM-396.2 Figure 2: Overview of the joint path building and embedding; The formerly chosen vertex f (vi) is in blue. The generated random value rd(vi), chosen onto the surface of the sphere, centered at f (vi) and of random radius ri is in red. The newly chosen payload carried vertex vi is in blue and its reference vertex re f (vi) in green. With blue are carrier vertices, in green reference vertices and in grey vertices which are not used. ∆ is defined to bound the new location of each payload carrying vertex. In order to embed one byte per coordinate, the interval ∆ is split into 256 subintervals. Thus three bytes per pixel, into each of the three spherical coordinates. The embedding is done at each stage of the path building, i.e. for each vertex, added to the path, we embed a part of the message. This process is iterative in order not to disturb a path that would have been built in previously. Due to the use of jumps, the distances between a vertex vi and its predecessor f (vi) can be relatively large. We propose to use a vertex as a reference for embedding in the current vertex vi and we denote it re f (vi). The reference vertex is defined as the closest vertex to vi which has not been previously selected in the path. This vertex is used for finding the new location vi of vi, as reference for the conversion into spherical coordinates. To insert the value n ∈ [0,255], into one of the coordinates of vertex vi(c1,c2,c3), we use the following mapping function:
منابع مشابه
A High-Capacity Data Hiding Method for Polygonal Meshes
This paper presents a high-capacity data hiding method for 3D polygonal meshes. By slightly modifying the distance from a vertex to its traversed neighbors based on quantization, a watermark (i.e., a string of binary numbers) can be embedded into a polygonal mesh during a mesh traversal process. The impact of embedding can be tuned by appropriately choosing the quantization step. The embedded d...
متن کاملReversible Data Hiding in Encrypted 3D Mesh Models
Reversible data hiding in encrypted domain (RDHED) has greatly attracted researchers as the original content can be losslessly reconstructed after the embedded data are extracted, while the content owner’s privacy remains protected. Most of the existing RDH-ED algorithms are designed for grayscale/color images, which cannot be directly applied to other carriers, such as three-dimensional (3D) m...
متن کاملData hiding schemes based on the formal improved exploiting modification direction method
Steganography is an important strategy in the field of data security. Its main purpose is to hide secret information by embedding it in a cover image. The quantity of data that can be hidden in a single cover image is also very important. Recently, a high capacity technique called Exploiting Modification Direction (EMD) data hiding was introduced by Zhang and Wang. In order to enhance embedding...
متن کاملHigh Capacity Data Embedding System in DCT domain for Colored Images
In this paper, we propose a high capacity dataembedding system in DCT domain for colored images and review the existing high capacity data embedding systems both in spatial domain as well as transform domain. The embedding is done on the quantized DCT coefficients using the concept of Hadamard Matrix. The system has very high capacity as comparable to the existing techniques of DCT domain. The ...
متن کاملAdaptive Data Hiding Approach for True Color Image Using Randomization Technique
In today’s scenario of internet world, hiding data with security is the highly challenging and desirable task. There are large numbers of techniques available which are capable of hiding data in cover media. The purpose of this research work is to develop a novel, secure and high capacity data hiding technique in 24 bit true color image. This novel approach uses pixels of 24 bit true color imag...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2016